﻿#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
//int main()
//{
//	enum day//枚举的创建
//	{
//		monday,
//		tuesday,
//		wedday,
//		thurday,
//		friday,
//		satday,
//		sunday,
//	};
//
//
//	return 0;
//}
//int main()
//{
//	enum color
//	{
//		red=1,
//		green=4,
//
//	};
//
//	return 0;
//}


//void ADD()
//{
//	int a = 0;
//	int b = 0;
//	printf("输入两个操作数\n");
//	scanf("%d %d", &a, &b);
//	int c = a + b;
//	printf("%d\n", c);
// }
//void SBU()
//{
//	int a = 0;
//	int b = 0;
//	printf("输入两个操作数\n");
//	scanf("%d %d", &a, &b);
//	int c = a - b;
//	printf("%d\n", c);
//}
//void MUL()
//{
//	int a = 0;
//	int b = 0;
//	
//	printf("输入两个操作数\n");
//	scanf("%d %d", &a, &b);
//	int c = a * b;
//	printf("%d\n", c);
//}void DIV()
//{
//	int a = 0;
//	int b = 0;
//	printf("输入两个操作数\n");
//	scanf("%d %d", &a, &b);
//	int c = a / b;
//	printf("%d\n", c);
//}
//enum option 
//{
//	Exit,
//	Add,
//	Sub,
//	Mul,
//	Div,
//};
//void menu()
//{
//	printf("***********************\n");
//	printf("*** 1.sum    2.sub  ***\n");
//	printf("*** 3.mul    4div   ***\n");
//	printf("*** 0.exit          ***\n");
//	printf("***********************\n");
//
// }
//int  main()
//{
//	int input = 0;
//	do
//	{
//		menu();
//		printf("请选择:");
//			scanf("%d", &input);
//			switch (input)
//			{
//			//case 1://之前我们这里都是 数字这里也可以改成枚举
//			case Add:
//				ADD();
//				break;
//			//case 2: 
//			case Sub:
//				SBU();
//				break;
//			//case 3:
//			case Mul:
//				MUL();
//				break;
//			//case 4:
//			case Div:
//				DIV();
//				break;
//			case 0:
//				printf("退出计算器\n");
//				break;
//			default:
//				printf("输入错误，请重新输入\n");
//				break;
//			}
//
//	} while (input);
//	return  0;
//}




//
//struct st
//{
//
//	char i;
//	int c;
//};
//union un
//{
//	char i;
//	int c;
//
//};
//int main()
//{/*
//	printf("%zd\n", sizeof(struct st));
//	printf("%zd\n", sizeof(union  un));*/
//	union un un = { 0 };
//	printf("%p\n", &(un));
//	printf("%p\n", &(un.c));
//	printf("%p\n", &(un.i));
//
//	return 0;
//}
//#include <stdio.h>
//联合类型的声明
//union Un
//{
//	char c;
//	int i;
//};
//int main()
//{
//	//联合变量的定义
//	union Un un = { 0 };
//	un.i = 0x11223344;
//	un.c = 0x55;
//	printf("%x\n", un.i);
//	return 0;
//}
//union Un1
//{
//	char c[5];// 5  1    8  对比是1       联合体也有对齐数，
//	int i;//4       4    8  对比是 4   
//};
//union Un2
//{
//	short c[7];
//	int i;
//};
//int main()
//{
//	//下⾯输出的结果是什么？
//	printf("%d\n", sizeof(union Un1));
//	printf("%d\n", sizeof(union Un2));
//	return 0;
//}
//
//int main()
//{
//	int  a = 1;
//	if ((*(char*)&a) == 1)
//		printf("小端\n");
//	else
//		printf("大端\n");
//	return 0; 
//

//union un
//{
//	char i;
//	int c;
//
//};
//int main()
//{
//	union un un = { 0 };
//	un.c = 1;//假设第一个字节是1
//	if (un.i == 1)//判断第一位是1 还是0
//		printf("小端\n");
//	else
//		printf("大端\n ");
//
//	return 0;
//}